【服务框架】flask-web服务
简介
参考:
- https://www.jianshu.com/p/54057b4f0437
- http://docs.jinkan.org/docs/flask/quickstart.html\#quickstart
实现
# 实现一个小例子
from flask import Flask
# 创建flask实例,其中__name__为应用的名称,如果是应用程序包,则需要写程序包的名称
app = Flask(__name__)
# 使用route装饰器实现不同的url解析,从而确定什么样的url可访问函数,实质就是网页显示的后缀名
@app.route('/')
def hello_world():
return 'Hello World!'
# 条件语句即若直接运行脚本,则执行下面的语句,若是以包的形式被调用,则以下语句不会执行
if __name__ == '__main__':
# 运行flask web应用程序
app.run()
执行方式
运行这个服务器时,目前只能从自己的计算机上访问。如果服务器公开使用,则可通过app.run(host='0.0.0.0')让操作系统监听所有公网ip
问题
在每次修改代码后需要手动重启服务。
可以通过启动调试支持,在服务器重启后自动载入修改后的code,并且在发生错误的时候提供一个有效的调试器
# 配置应用对象
app.debug = True
app.run()
# 执行参数传入
app.run(debug=True)
问题
允许执行任意code,存在安全隐患,不能直接用在生产环境
进阶
可以通过规则定义url,目的是采用清晰的url操作相应的函数功能
# 通过后缀名区分功能
@app.route('/user/<username>')
def show_user(username):
return 'User: {}'.format(username)
>